Computing device providing electronic book data having selectable content layers with different difficulty levels and related methods

ABSTRACT

A computing device may include a display, a memory to store electronic book data having a plurality of different content layers each associated with a different content difficulty level, and a processor coupled to the display and the memory. The processor may determine a selected content difficulty level for viewing of the electronic book data, and display on the display the respective content layer of the electronic book data associated with the selected content difficulty level.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. application Ser. No.12/034,935 filed Feb. 21, 2008, which in turn claims priority from U.S.Provisional Patent Application No. 60/902,582 filed Feb. 21, 2007, allof which are hereby incorporated herein in their entireties byreference.

FIELD OF INVENTION

This invention relates to electronic books, in particular to interactiveelectronic book operating systems and methods, such as for use withscientific, engineering and any other technical topic books.

BACKGROUND AND PRIOR ART

Electronic books have been growing in popularity in recent yearsprimarily in hardware applications, and have limited interactivefeatures. A major problem with electronic books is that the electronicbooks are limited to displaying general fiction and non fiction topicsand are not useful for displaying and education students in science,engineering and other technical topics.

Still another problem with electronic type books is that they generallyhave a single screen with a flat image, that does not have the look andfeel of classical books, and typically limited to one or two-pagedisplays. Another problem with electronic books is that the computerscreen (both desktop and laptop types) does not replicate a full page ofa book, and instead has part of it.

Various types of systems and methods have been proposed for usingportable devices to display publications. See for example, U.S. Pat. No.5,761,485 to Munyan; U.S. Pat. No. 5,937,158 to Uranka; U.S. Pat. No.6,229,502 to Schwab; U.S. Pat. No. 6,933,928 to Lilienthal; U.S. Pat.No. 6,959,425 to Krauklis; U.S. Pat. No. 6,966,026 to Sommerer; U.S.Pat. No. 7,017,159 to Baker; U.S. Pat. No. D449,606 to Lee et al.; U.S.Pat. No. 6,421,524 to Padgett; U.S. Pat. No. 6,313,828 to Chombo; U.S.Pat. No. 6,335,678 to Heutschi; and U.S. Pat. No. 7,260,781 to DeMelloet al.

The Munyan '485 patent describes a personal electronic book system thatrequires extensive hardware to operate. The Uranka '158 patent describestechniques for customization for each user on a portable media incombination with use of the network with the focus on identifying anddisplaying information. The required customization techniques for eachpublication does not allow for uniformity of displaying printedpublications.

The Schwab '502 describes an elaborate hardware driven hand-held digitaldata reader (hinged electronic book with two-face to face touch-screens)that functions like an electronic book and requires side thumb buttonson the side of the books and not on any of the pages.

Lilienthal '928 describes a portable device that displays and playsaudio and video content like a DVD player but is not easily usuable toread books.

Krauklis '425 describes a system and method of managing scalable list ofitems for display on a portable device and not for easily displaying andmanipulating books.

Sommerer '026 describes a system for managing a balanced view ofgenerated pages on an electronic device with a rolling pair of linesbasis.

Baker '159 describes a system for presenting book marks for smalldevices such cell phones and PDAs for use on small screen displays andnot for regular sized books.

Lee '606 shows a hardware design of a “portable electronic book” thatappears to resemble a laptop with removable cover and not for displayingfull pages of open books.

Padgett '524 describes a talking book with microphone that is generallylimited to recording and playing an audio recordings.

Chornbo '828 describes a hardware system of a hinged two displayelectronic book having various size buttons controls and does not havean efficient operating system.

Heutschi '678 describes a electronic touch screen devices for a displayof electronic book that is connected to the network.

General proposals have been made for electronic books that usuallyrequire specific hardware components that may allow for displayingsimple fiction and general nonfiction type content, but are notapplicable at all for technical books, and the like. Such technicalbooks like those used in various sciences, mathematics, engineering andthe like, are not able to be used with the prior art. Thus, the needexists for solutions to the problems with the prior art, namely, theneed for a software platform that handle the display and interactiveinteraction of readers with the technical book contents.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is an overview of a main screen of an open digital book on acomputing device.

FIG. 2 is a flowchart for implementing page flipping.

FIG. 3 is a flowchart for implementing Dynamic Indexing.

FIGS. 4A, 4B and 4C show different steps associate with clicking asearch icon.

FIGS. 5A, 5B, 5C, 5D, 5E and 5F show a dynamic index feature.

FIG. 6 is a flowchart for implementing a Dynamic TOC (Table of Content).

FIGS. 7A, 7B, and 7C shows manage table of contents management features

FIG. 8 is a flowchart for implementing Bookmarks.

FIG. 9A shows adding a bookmark.

FIG. 9B shows searching for bookmarks.

FIG. 9C shows editing/deleting book marks.

FIG. 10 is a flowchart for implementing Customized Color Themes.

FIG. 11A shows a list of customized color themes.

FIG. 11B shows a selected color theme for the above-mentioned colorchange.

FIG. 12 is a flowchart for implementing Floating Pages.

FIGS. 13A and 13B show creating a floating page.

FIG. 13C shows managing floating pages.

FIG. 14 is a flowchart for implementing Highlighting.

FIG. 15 shows the highlight feature.

FIG. 16 is flowchart for implementing sticky Notes.

FIG. 17A shows creating a sticky note.

FIGS. 17B and 17C show managing a sticky note.

FIG. 18 is a flowchart for implementing Page Browsing at differentflipping speeds.

FIGS. 19A, 19B, 19C show page browsing at different flipping speeds.

FIG. 20 is a flowchart for implementing clickable Chapters and Sectionson Frames.

FIGS. 21A, 21B and 21C show clickable chapters and sections on frames.

FIG. 22 is a flowchart for implementing Page Hiding.

FIGS. 23A and 23B show use of the page hiding feature.

FIG. 24 shows description attachment feature.

FIG. 25A is a flowchart for invoking the Tutor Me module.

FIG. 25B is a flow diagram continuation from FIG. 25A showing additionalsteps in the QuizMe module.

FIG. 26 shows separate window activated for QuizMe.

FIG. 27A is a flowchart for a Tutor Me feature.

FIG. 27B is a flowchart for comparing the terms for the insertedequation in Tutor Me.

FIG. 27C is a screenshot for an error message for incorrect sign inTutor Me.

FIG. 28 is a flowchart for implementing a background clock.

FIG. 29 shows clock display activated.

FIG. 30 is a flowchart for implementing a Dynamic Cover Page.

FIG. 31 is a seed generator icon activated for selected seed value orrandom value.

FIG. 32 is a flow diagram showing an example of step for implementing asymbolic circuit solver.

SUMMARY OF THE INVENTION

In an example embodiment, interactive electronic book operating systemsand methods may allow an interactive electronic book to replicate theappearance of a classical book having two pages on each screen that isuseful for displaying books of all types from fiction to nonfiction andtechnical and professional books.

In another example embodiment, an interactive electronic book operatingsystem and methods may provide the look and functionality of a printedbook in tactile feel and visual appearance, and can be used with bookshaving all types of subject matter ranging from fiction, nonfiction,technical and professional books.

In yet another example embodiment, an interactive electronic bookoperating system and methods may provide hardware independence,cross-platform capable, flexible operating system for the “technicalbook of the future” for engineering and science fields.

In still another example embodiment, an interactive electronic bookoperating system and methods may provide an extremely rich book effectthat brings images and symbolic equations and other elements into a veryhigh interactive representations.

In another example embodiment, an interactive electronic book operatingsystem and methods may provide a friendly student-instructor learningenvironment that simplifies the technical concepts and learning materialby allowing immediate numerical solutions of complex equations.Therefore this operating system serves an excellent platform for designtools for engineering and science students and professionals.

In still another example embodiment, an interactive electronic bookoperating system and methods may provide relatively easy interfaces withnew learning elements through interactive Java® applets.

More particularly, a computing device may include a display, a memory tostore electronic book data having a plurality of different contentlayers each associated with a different content difficulty level, and aprocessor coupled to the display and the memory. The processor maydetermine a selected content difficulty level for viewing of theelectronic book data, and display on the display the respective contentlayer of the electronic book data associated with the selected contentdifficulty level.

The electronic book data may comprise at least one problem to be solved,and the different content difficulty levels may comprise differentdifficulty levels for the at least one problem. The at least one problemmay comprise at least one of a scientific problem, an engineeringproblem, and a mathematics problem, for example. In an exampleembodiment, the at least one problem may comprise at least oneelectrical circuit problem.

The different content layers may provide cumulative layers of complexitywith respect to one another, for example. The computing device may alsoinclude an input device coupled to the processor to select the contentdifficulty level.

A related method for using a computing device, such as the one describedbriefly above, is also provided. The method may include storingelectronic book data in the memory, where the electronic book data has aplurality of different content layers each associated with a differentcontent difficulty level. The method may further include determining aselected content difficulty level for viewing of the electronic bookdata, and displaying on the display the respective content layer of theelectronic book data associated with the selected content difficultylevel.

A non-transitory computer-readable medium for a computing device, suchas the one described briefly above, may have computer-executableinstructions for causing the computing device to perform steps includingstoring electronic book data in the memory, where the electronic bookdata has a plurality of different content layers each associated with adifferent content difficulty level. The steps may further includedetermining a selected content difficulty level for viewing of theelectronic book data, and displaying on the display the respectivecontent layer of the electronic book data associated with the selectedcontent difficulty level.

Preferred embodiments of the interactive electronic book operatingsystems and method can include a computer platform with a single displayscreen, a complete digital book from the group consisting solely of ascience book topic and a technical book topic downloaded onto thecomputer platform, where a single page or two pages can be displayed ina classical type appearance on the screen. The operating system andmethod allows for the reader to be able to move and navigate through thebook with the similar ease to that of a classical book, such as beingable to flip forward and backward through the pages.

The methods and systems can include a forward and backward frame icon onthe screen that allow the user to flip forward and backward to differentsections and chapters of the open book.

The methods and systems can include dynamic indexing icon on the screenthat allows the user to customize an index of selected words and terms,and definitions of those words and terms to an index list for the openbook.

The methods and systems can include a dynamic table of contents icon onthe screen that allows the user to customize a table of content ofsections and chapters and parts of the open book.

The methods and systems can include a sticky notes icon on the screenfor allowing the user to customize note pages with material on anyselected page of the open book.

The methods and systems can include a hiding icon on the screen thatallows the user to selectively block out portions of words, phrases,paragraphs, details of any page of the open book at any time.

The methods and systems can include either or both a quiz me icon on thescreen that allows the user to selectively take interactive tests on anysection and chapter of the open book, and a tutor me icon on the screenthat allows the user to be interactively tutored with additionalteaching materials on any section and chapter of the open book.

The methods and systems can include either or both a lecture me icon onthe screen that allows the user to be lectured with additional teachingmaterials on any section and chapter of the open book, and a show medesign icon on the screen that allows the user to selectively be shownadditional designs in any page and any section and chapter of the openbook.

The methods and systems can include either or both a seed generator iconon the screen that allows an instructor to selectively insert adifferent value for at least one problem or design in the open book, anda seed generator icon on the screen that allows an instructor toselectively insert a random generated value for at least one problem ordesign in the open book.

The method and system can include running the computer platform on aJava® Virtual Machine program.

Further objects and advantages of this invention will be apparent fromthe following detailed description of the presently preferredembodiments which are illustrated schematically in the accompanyingexhibits.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Before explaining the disclosed embodiments of the present invention indetail it is to be understood that the invention is not limited in itsapplications to the details of the particular arrangements shown sincethe invention is capable of other embodiments. Also, the terminologyused herein is for the purpose of description and not of limitation.

An identification of the components will now be described.

-   1. Main screen of digital book-   2. left page screen-   4. right page screen-   6. flip page backward icon on left page-   8. flip page forward icon on right page-   10. left frame (backward flipping to different book    chapters/sections)-   12. right frame (forward flipping to different book    chapters/sections)-   14. upper horizontal toolbar-   16. dynamic index icon-   18. TOC (table of content) icon-   20. bookmark icon-   22. color themes icon-   24. floating pages icon-   26. highlight icon-   28. sticky notes icon-   30. supplemental images/material display icon-   32. hiding icon-   34. key points option feature-   36. attachment icon-   38. quiz me icon-   40. Lecture Me icon-   42. Tutor Me icon-   44. Show Me Design icon-   46. Practical Relevance icon-   48. Seed generator icon-   50. Solution methods buttons.-   52. Levels buttons.-   54. Symbolic/Numerical switching button.-   100. Flip page flowchart-   200. Dynamic Indexing Flowchart-   300. Dynamic TOC (Table of Contents) Flowchart-   400. Bookmarks Flowchart-   500. Customized Color Themes Flowchart-   600. Floating Pages Flowchart-   700. Highlighting Flowchart-   800. Sticky Notes Flowchart-   900. Page Browsing Flowchart-   1000. Implementing Chapters and Sections on Frames Flowchart-   1100. Page Hiding Flowchart-   1200. QuizMe Flowchart-   1300. Tutor Me Flowchart-   1400. Background Clock Flowchart-   1500. Dynamic Cover Page Flowchart-   1600. Opened page for Seed Generator Icon

The invention is referred to in the figures and text as the novelinteractive electronic book operating system and method, the inventionor in many of the figures as the eBook.

The invention is a hardware and software independent system and methodsthat can be used with various computer based systems, and preferably,any computer-based system that runs the JAVA® Virtual Machine. Theinvention can operate on computer based platforms that include portableand hand held laptop type computers. The invention can operate oncomputer based platforms that include traditional desktop computers. Apreferable screen for the computer based platform can allow for imagesof both left and right pages of open books to be easily readable on thescreen. Additionally, the invention can work with a screen showing oneopen page of the digital book.

The operating system of the invention allows for digital books,preferably those types of educational text books having science,engineering and other technical topics to be viewed in their entirety onthe single screen. The technical and science and engineering bookspreferably can include those that teach electrical engineering fieldssuch as electronics, circuits, controls, signal processing, filters.etc.Additionally other scientific and technical digital books can be viewedon the digital screen, such as nonphysical and physical topics thatinclude Physics, Chemistry, Mathematics, digital design, biology,anatomy, and the like, and all disciplines of engineering fromindustrial engineering, mechanical engineering, aerospace engineering,chemical engineering, nuclear engineering, electrical engineering, andthe like.

The novel operating system has up to approximately 23 features asdescribed below in reference to FIGS. 1-23.

FIG. 1 is an overview of a main screen 1 of the open digital book havinga visible left page screen 2 and a visible right page screen 4, withunique icons arranged in tool type bars above, below and on the screenitself. While FIG. 1, shows the clickable type icons arranged in apreferred example, the invention can work with the clickable type iconslocated on different parts of the page images of the digital bookitself, which will be described further on in relation to other figuresbelow.

1—Classical Book Look and Feel #1, 2, 4, 6, 8, 10, 12, 100 FIGS. 1-2.

The invention has the capability of inserting all objects as defined byscientific, engineering and technical book publishers. The user/readercan navigate forward 8 and backward 6, FIG. 1, and can enter an objectID (identification) and the book can directly render the object in theviewable two pages along with the objects in front/behind of thatobject. The book frames can reflect the current position of the bookviewing by varying their thicknesses. Unlike most electronic books, thecontent of a book can be spread across in pages, and the user navigatesthrough the book simply by flipping the pages the same way as aclassical book having real pages.1.1 Size (8.5″×11″)The book will be implemented as resizable window. A preferable screensize will replicate up to 8.5″×11″ or larger.1.2 FramesSides of the book (See Feature 12 below)1.3 Page Navigation #6, 8 FIG. 1.Flip forward and Flip Backward are implemented for two object types(text, image and other complex objects):

-   -   Implement navigation for other object types (Circuits, Examples,        Tables, etc.)    -   Implement a random location flipping (compared to sequential        flipping), like in bookmark or index.        See FIG. 2 for the flowchart implementation. Please note that        the speed of page flipping will be given in Feature 10 below.        1.4 3-D Effects (Page Thickness, Visual Effects as the Page is        being Flipped, Etc)        Increase/decrease of frame's thickness based on current flipping        location.        1.5 Write/Scratch/Underline on the Pages        Free style writing, saves the scratches when the user leaves the        page, “erases” scratches from the page.

Referring to 6, 8, 10, 12, 100 FIGS. 1 and 2, the content of the bookscan be spread across in pages and the user can navigate through the bookby simply flipping the pages the same way they would do so if it was aclassical book. The book images also reflects in 3D (three dimensional)effect the thickness 10, 12, FIG. 1 of the pages at both sides accordingto the page opened. Similar to classical books, this book images allowsthe ability to write, scratch or underline on any place on the book pageimages.

2—Dynamic Index with Hyperlinks 16, 200 FIGS. 1, 3, 4A-4C, 5A-5F

This feature initially was meant to resemble the Index at the end ofscientific books. FIG. 3 shows the flowchart for its implementation. Theinteractive electronic book operating system and method supports twodistinctive features:

-   -   1. Search for word: does not imply saving search results, if the        user wish to instantly find a phrase she remembers from book,        the search is the best choice. The results will be shown in a        list view, but it would take some time to perform full text        search in the novel invention content. The novel interactive        electronic book operating system and method can also allow the        user to restrict his search to specific chapter/section, and        support also wildcard characters (? for single and * for many).        This feature is memory-less, once the user close the search        results, the search may be erased.    -   2. Index word: The user has the option to save the search for        future use; it gives faster access to the word exactly as Index        does. Once the search results are indexed, they will be recorded        into the database and the user can access them quickly in        subsequent searches.        Referring to 16, 200 FIGS. 1, 3, 4A-4C, 5A-5F, rather than        having a static index precompiled for a digital book, this        feature allows the user to right click on any word within the        text and add it to the index. The moment the word is added to        the index, the invention engine searches the whole text for that        word and associate links to the places in the index. Links can        show bubbles with brief descriptions once the cursor moves over        it.        2.1 Search        The simulated images for the search features are shown in FIGS.        4A, 4B, 4C. The Search sub-features are listed below in        reference to 16 FIG. 1 and FIGS. 4A-4C;    -   2.1.1. The user can open the search window and enter a search        string (text and wildcard characters) to look for a word; the        search can be restricted to specific chapter, section and        currently shown pages. Full search of the novel interactive        electronic book operating system and method, has to be performed        and any occurrence of the word should be recorded into the        database for future access.    -   2.1.2. Users will be warned not to index common words (the, a,        is, has, have, do etc.). Also, default index created by the        publishers (Mesh, loop, Voltage, Current, power, etc.) will be        created.    -   2.1.3. The search window is basically a List View that contains        the section/chapter of all hits, along with the context of each        hit to give the user a clue if this is what he is looking for.    -   2.1.4. Once the user double clicks on any hit, the novel        interactive electronic book operating system and method can open        the page that contains that hit and highlight the occurrence for        the user.    -   2.1.5. The user can “save” this search into the invention Index        by clicking a button (Index this word) that appears on the        search List View. The novel interactive electronic book        operating system and method has to add the word to the Index        list and store all hits into the database so that the subsequent        accesses can be accomplished faster.        2.2 View and Search Index (1) (Shown in Reference to FIGS.        5A-5F)    -   2.2.1. User can Click (Index) to show an alphabetic-ordered List        View (As seen at the end of scientific books) of all the indexed        words. (FIG. 5A)    -   2.2.2. The user can filter on a specific letter (drop down box        or links to all alphabetic letter) to cut the view into that        specific letter only. The user can also search for a word in the        index itself. (FIG. 5B)    -   2.2.3. Once the user double clicks a word in the Index, the same        search window described in Section 2.1.3 will be displayed, and        the action described in 2.1.4 will be enabled also. (FIG. 5C)    -   2.2.4. The user can delete the word from the index by selecting        it and clicking the (delete) button. We might prevent the user        from deleting any word from the publisher's index (to be        discussed). (FIG. 5D)    -   2.2.5. Import/Export Index will be implemented. (FIG. 5E)    -   2.2.6. Add back and forward arrows to get back to the original        location while navigating through the search results. This is        because the user might need to get back to where he originally        was before performing the search. (FIG. 5F).        Referring to 16, FIGS. 1, 3, 4A-4C, 5A-5F, rather than having a        static index precompiled for a digital book, the novel        interactive electronic book operating system and method allows        the user to right click on any word within the text and add it        to the index. The moment the word is added to index, the        invention engine searches the whole text for that word and        associate links to these places in the index. Links can show        enlarged bubbles with brief descriptions once the curser moves        over.

3—Dynamic Table of Content 18, 300 FIGS. 1, 6 and 7A-7C)

The novel interactive electronic book operating system and method has toread its “viewable” content dynamically from the current Table ofContent (TOC) Profile. FIG. 6 shows its flowchart to carry outimplementation. This profile can be loaded by default at the launch ofthe novel operating platform; it will remain as default profile unlessthe user wants to change it.The invention can use the word profile to refer to the dynamic TOC,although we might consider expanding the term (profile) to refer to allthe user settings and preferences remembered by the novel operatingplatform (Colors, themes, TOC, etc.)The sub-features are listed below 3.1 to 3.5:3.1 View Profiles (1)The user can click on “Manage profiles” to open a List View of allprofiles, the preview should be a Master/Detailed one, where the firstlist shows the profiles (Name, Description, Creation Date, LastModified, etc.), and the detailed view shows the TOC details once theuser selects a specific profile. See FIGS. 7A, 7B and 7C.3.2 Delete Profile (1)The user can select a profile and delete it, this will delete themetadata stored to describe what to show from the novel electronic bookoperating platform content, and it will not touch the data though. Theremust be a Default profile defined that cannot be deleted and whichcontains the whole book material. Profiles which are defined by theauthors should be protected and the user cannot delete them3.3 Add/Update Profile (1)This enables the user to Add/Remove content to/from the viewablecontents of the novel interactive electronic book operating system andmethod.3.4 Set as eBook Profile (1)Selecting a profile and clicking (Set as eBook profile) makes thatprofile the active one, the database of the invention has to be updatedto reflect the new profile.3.5 Import/Export Profile (1)The user can Export a TOC profile into an external file (.TOC), and canimport it into other stored books. The information of the TOC will beadded to the Master/Detailed List View and can be handled as describedabove. Each .TOC file must target specific book (circuit, electronics,DSP, etc), so it has to store a reference to the book that “exported”it. Referring to 18, 300 FIGS. 1, 6 and 7A-7C, having inherently layeredadaptive content, the content of a digital book can be customized by theuser either by selecting predefined profiles (“Table of Contents”), orby customizing any profiles by adding or removing any of the availableset of content. For example, if the digital book is an ElectronicCircuit Book about electronic circuits, electrical engineering studentscan be exposed to more details, sections and chapters than a mechanicalengineering student would be from the same textbook.

The user can also import the customized table of content being exposedby another user. This feature is mainly helpful in the sense that theinstructor designs their course by customizing the table of content ofthe book, and then exports it into a file that then later imported bytheir students to reflect the syllabus of the course.

4—Bookmarks 20, 400 FIGS. 1 and 8, and 9A-9C

Bookmark groups (baskets) can be defined by the user to refer to logicalgrouping of her bookmarks (Things to remember before the exam, Things toask the teacher in office hours, etc.). Bookmarks can be added to eachbookmark basket. FIG. 8 shows a preferred flowchart to carry ourimplementation of bookmarks. Sub-features are described as follows in4.1-4.4:4.1 View Bookmarks (1) (FIG. 9B)A master/details view for all the bookmark baskets (master view) alongwith their bookmarks (details view). Clicking on a bookmark 20 FIGS. 1and 9A should take the user to the location of the bookmark. Thebookmarks can be sorted by name or location.4.2 Manage Bookmark Groups (1) (FIG. 9C)From the view described in 4.1, the user should be able toAdd/Delete/Update bookmark baskets.4.3 Add Bookmark (2) (FIG. 9A)While browsing the book, the user can add bookmark anywhere by placingit over any text or image, or any other object. The invention promptsthe user to decide into which basket the bookmark should be added, andwhether it is hidden or viewed (to be discussed).4.4 Delete Bookmark (1) (FIG. 9C)The user can delete the bookmark from the Bookmark list view describedin 4.1. Referring to 20, 400 FIGS. 1 and 8, and 9A-9C, the user canbookmark a part of the page, a complete page, or multiple pages. Thebookmarks can be organized in groups. Then the user can go to a certainbookmark group and view whatever content they added to that group. Agood example of the usage of such a setup can be a bookmark group forexam review where the user adds all important material to be reviewedbefore the exam.

5—Customized Color Themes 22 500 FIGS. 1, 10 and 11A-11C

The invention supports generally predefined themes that fit all moodsand all personalities. For example, we can support classical book themein which Black-White-Gray degrees are used, other modern themes foryoung students, something for girls will be cool as well, and so on.The invention feature for customized color themes will support dynamiccolor and font changes. FIG. 10 shows its flowchart to carry ourimplementation.

Referring to 22 500 FIGS. 1, 10 and 11A-11C, the font, background,headers, and all items' colors and themes can be customizable and can bechanged on the fly to suit the users desires and needs.

6—Floating Pages 24, 600 FIGS. 1, 12, and 13A-13C.

Floating pages is a feature that requires intensive graphical effort tomake it look impressive. The internal logic is fairly simple providedthat the floating pages are only copies of the original image. There isno mean of (cutting) a page from the book and putting it beside, whilephotocopying a page makes more sense. The browsing in the invention willremain the same.An important note here is that the rendering of pages might not be thesame every time. Thus, taking a floating page out does not mean that itwill happen the same way every time in the invention itself.Floating pages can be saved into the Data Base (DB) for later use whenneeded. Sub-features of the floating pages are discussed as follows in6.1-6.4:6.1 Take Out a Floating Page (1)The user can take out the right or left page and make it floating page,this will create another page instance (keeping the book as it is). Theuser can move the floating page as another window, as a movable imagerendered over the eBook, etc.). FIG. 12 shows its flowchart to carry ourimplementation.6.2 Save Floating Page (1)The user can click and save a floating page so she can open it in laterruns of the invention6.3 Delete a Floating Page (1)The user can delete any floating page.6.4 Organize Floating Pages (1)This is the floating page container (clipped together), here the usercan browse them, unclip anyone of them and take it out, hide/show, etc.

Referring to 24, 600 FIGS. 1, 12, and 13A-13C, as the user might need tokeep part of a page open and visible but at the same time navigatethrough the other pages to see related content, the user can select thepage they want to keep visible to float on top of the book. Followed bynavigating through the book while keeping that page floating on top.These floating pages can be grouped in a clip that handy for viewing atany point while reading through the book. Moreover, these floating pagescan be shown or hidden on demand.

7—Universal Support

The invention is hardware and software independent and can be run withany computer based system that preferably runs the JAVA® VirtualMachine. For example, the novel operating system framework of theinvention can be run on any platform capable of running a light LINUX®kernel, including IPOD®, and the like.

8—Highlighting 26 700 FIGS. 1, 14 and 15.

This feature is very similar in its requirement to the Bookmark feature,except that it lacks the idea of baskets, and adds the complexity ofhighlighting MULTIPLE objects (compared to bookmarking single locationonly).

8.1 Highlight Text (1)

The user may select text and highlight it, and the text can spanmultiple objects. More than one highlighting color may be used (definedby the theme as described previously in Feature 5). All the highlightsin the invention can be controlled by a show/hide highlights option,this way the user can view his book without the highlights whenever hewants to.8.2 Delete Highlight (1)Once the Highlighted text is clicked, it should give an indication tothe user that it is selected now. The user can change its color, and candelete it.

Referring to 26 700 FIGS. 1, 14 and 15, the user can highlight any partof the text, image, or item, or any combination of these parts of thedigital book.

9—Sticky (Adding) Notes 28, 800 FIGS. 1, 16 and 17A-17C.

Notes are a small colored “piece of paper” that can be stuck intoobjects (text, image, etc.) and allow free editing. The purpose of thisfeature is to give the user the ability to write her notes and attachthem to the proper place. FIG. 16 shows the flowchart to carry ourimplementation.9.1 Create Note (1) (FIG. 17A)The user may create a note, pick colors (predefined per theme), andstick it to any object in the book. The note can be expanded/collapsed,and can be moved from one place to another.9.2 Delete Note (1) (FIG. 17B, 17C)The user may delete a note.9.3 Manage Notes (1) (FIG. 17B, 17C)One main screen that shows a list of all notes defined in the invention.The user can delete/update notes from there, and can also double click acertain note to render the book opened on the page that contains thenote.

Referring to 28, 800 FIGS. 1, 16, 17A-17C, the user can write notes andfix them to any place on the book for later reference and use.

10—Page Browsing at Different Flipping Speeds 6, 8, 900 FIGS. 1, 18 and19A-19C.

The longer icons 6, 8 are held down (clicked on), the faster thebackward or forward page flipping speed occurs. Two sub-features aredescribed here 10.1 and 10.2:

10.2 Increasing Flipping Speed (1) (FIG. 19C)

Upon holding the click at the edge of the page, the flipping speed hasto increase until it reaches a certain limit.

10.3 Clickable Section Titles

As the user moves the cursor over the edges of the pages at the bookleft and right frame sides, and according to the page over which edgethe cursor is at, the title of the section appears to allow the user toclick to open the corresponding section.

Referring to 6, 8, 900 FIGS. 1, 18, 19A-19C, there are different waysthe user can flip pages. If the cursor moves over the corners of thebook, the page corner is lift up a little bit indicating that it isready to be flipped. And then if the user clicks on that corner, onepage is flipped forward or backward depending on the corner the cursoris at.

If the hardware that is running the book operating system has a pad-likemouse, similar to the mouse pad available in on most laptops, if thecursor is close to one of the book corners, then the page can be flippedby simply emulating the classical page flipping by the finger tip beingswiped over that pad to the flipping direction.

If the cursor is on one of the book page four corners and the userclicks on the page to be flipped as described above, but instead ofreleasing the clicking once the first page is flipped, then after ashort time (approximately one second for example), three pages can beflipped in the same direction. Then if the clicking still on, thenanother group of pages is flipped and so forth. The number of pagesbeing flipped in this fashion increases exponentially as the user keepsholding the clicking continuously down.

11—Supplemental Image Display 30 FIG. 1

Referring to 30 FIG. 1, continuous images can be varied to correspond tothe topic displayed in a given page. Supplemental images (additionalteaching) references for elaborating and further teaching/illustratingof topics, can be hidden or viewed as selected. The supplemental imagescan be added to the content anyplace in the digital book. Beingauxiliary and non-core material, the user can select to show or hidethis material at any point for additional teachings and illustrations ofthe topics.

12—Frame Shows Clickable Sections 10, 12, 1000 FIGS. 1, 20 and 21A-21C.

Right and left frame should be divided into equal spaces, eachrepresenting a chapter from the book, once the user hover the mouse overthat region, the invention has to pop-down a list of sections of thatchapter. The sections are clickable and allow fast access to bookcontent. The granularity of the view has to vary between fine-grain(sections) and coarse-grain (chapters), we believe that we have todirectly (on the frame) show the sections of the currently openedchapter. But for the other chapters, we will just pop-down a menu uponhovering the mouse over the frame, and in this menu we will show allsections. FIG. 20 shows a flowchart to carry our implementation. Animage on the screen can show overlapping pages edges 10, 12, that whenclicked on allow the user to go to different sections and chapters.

Referring to 10, 12, 1000 FIGS. 1, 20 and 21A-21C, as the user moves thecursor over the edges of the pages at the book left or right framesides, and according to the page over which edge the cursor is at, thetitle of the section appears on which the user can click to open thecorresponding section.

13—Hide Some Parts of the Open Pages 32, 1100 FIGS. 1, 22, 23A and 23B

The user can use a “hand” icon to hide any part of the page in order toallow users to memorize, review, or recall the hidden content. FIG. 22shows a flowchart for an example implementation.

Referring to 32, 1100 FIGS. 1, 22, 23A, 23B, this feature is analogousto using the actual hand of a reader to cover a part of the book to pickthe mind and self-test, the user's information. The invention enableshiding parts of the pages to emulate the human hand effect.

14—Things You should Remember 34 FIG. 1.

This feature has to be implemented as other content (text, image, etc.)as specified by the authors and publishers of the digital book beingused.

Referring to 34 FIG. 1, as the user is about to leave a section or atopic, the invention displays a message that contains key points thatthe user needs to remember having finished reading through that topic.The icon can activate key points that the user can automate. The usercan also selectively choose a listing of key learning points at the endof each section.

15—Attach Files to eBook Content 36 FIGS. 1, 24.

The user may also to attach any file (video, image, presentation, etc.)to invention objects. Subsections 15.1 to 15.3 describe this feature.

15.1 Attach File (1)

The user can be able to attach a file to any object in the book. Anindication beside the object should reflect that there is an attachmentassociated with it.

15.2 Delete Attachment (1)

The user can be able to delete an attachment.

15.3 Manage Attachments (1)

This is a screen that shows a list of all attachments in the entiredigital book. The user can delete/update/run attachments from there, andcan also double click a certain attachment to render the book opened onthe page that contains the note.

Referring to 36 FIGS. 1, 24, it is possible for the user to attach anyfile to the digital book and pinpoint it on any location throughout thepages of the book. An example of this feature is to attach apresentation, PDF type document, datasheet, video, or audio thatpertains to the topic in that page or section.

16—Quiz Me 38, 1200 FIGS. 1, 26, 27A

The Quiz me module is a stand-alone application that can be used with orseparately from the rest of the invention.

Referring to 38, 1200 FIGS. 1, 25-26, on the toolbar there can be linkto start a quiz. The quiz can consist of a certain number of multiplechoice type problems for the user to solve within a certain selectedtime period. A timer can be displayed to show the quiz time elapsed.Questions can be displayed to the user in tandem one at a time. Afeedback can be provided to the user at the end of the quiz session.

17—Lecture Me 40 FIGS. 1, 26

The Lecture me module can be a stand-alone application that will be usedwith or separately from the rest of the invention. The lecture materialscan consist of video, audio, animation, and the like.

Referring to 40 FIGS. 1, 26, on the toolbar there can be link to start alecture. The lecture can be pre-saved video and audio content of alecture about the topic being selected.

18—Tutor Me 40, 1300 FIGS. 1, 25-27C.

Referring to 40, 1300 FIGS. 1, 25-27C, the user can be alternativelygiven a password or is allowed to enter an anonymous mode that allowsfor the user to receive a separate tutor session. The tutor session cancombine the lecture and quiz me features 16-17 described above. The usercan be tested for their input to a problem and compares the answeragainst possible solutions, where the user needs to answer the problemor reach an error threshold value (limited number of answer responses)before the correct solution is displayed. Additional problems can passthrough similar steps until the user is finished being tutored in atopic or section or chapter as needed.The system is designed to take the student's imputted equations, analyzethem, expand them, and chop them into terms that would be easy tocompare against the correct terms. The code is designed to make a termby term comparison and display the adequate error message. In thecomparison, several errors are accounted for such as: “wrong sign”,“wrong term”, “too many terms”, “missing a term”. By giving thesespecific error messages, the students would be able to detect the exactareas they are having problems in. For example, if a “wrong signmessage” is given, the user might want to check on the assumed currentdirections or voltage polarities. Furthermore, after imputing the wrongterm for five times or more, the user will be given the option ofviewing the correct answer.18.1 Graphical User Interface FIG. 32A Graphical User Interface was developed as the input of the SymbolicTool using the Java® SWING library. It consists of a drawing window witha grid where the user can draw an arbitrary circuit by placingpredefined component on the drawing area and connecting between them,thus creating the circuit. As mentioned in the introduction the GUI isweb ready and can be run remotely from within a browser. It has varioususeful capabilities such as drag/drop of components, rotate components,make wire connections and so forth. Also appropriate values can bechosen for each element and if any errors exist the user is notified. Onthe right side of the drawing area there are bottoms that either Zoom inor out the circuit schematic, or obtain the Netlist. Likewise the dropdown menu above the drawing area houses standard editing tools andSimulation & Analysis menu which invokes the Symbolic Circuit Solver.

The Netlist parser component analyses the constructed circuit which inthis case is represented in memory by a well-structured object hierarchyand translates it into a Netlist in CirML format, which is the formatused by SPICE. The Parser also has the capability of transforming theCirML Netlist back into a well-structured object hierarchy, meaning thatthe used can enter the Netlist first then obtain the circuit schematicfrom that Netlist. Simplification procedures are implemented so as tooptimize the for of the Netlist and remove any redundancy from theresult.

The Symbolic Circuit Solver component is the core of the InteractiveLinear Circuits Symbolic Simulation Tool. It is subdivided into severalsubroutines which when applied in succession to a Netlist yield theSymbolic time response. The flowchart of FIG. 32 starting from thirdexecution bloc shows an outline of what each subroutine does. Aftersimulation is requested by the user through the Simulation & analysismenu the Netlist Parser passes the Netlist into a class that uses thelist data to populate the Indefinite Admittance Matrix for the circuit.Then an algorithm is used for obtaining the transfer function betweenany two ports through computing the determinant and different cofactorsof the aforementioned matrix. The Indefinite Admittance Matrix ispopulated like any regular admittance matrix. The only difference isthat the ground reference node is considered to be outside the circuit.Note that all entries are in the frequency domain since a dynamicresponse is desired.

Then depending on which outputs the user chooses to compute the symbolicresults for, the program computes all required determinants an cofactorssymbolically. The algorithms are adjusted to manipulate symbolic objectsrather than just numerical values. Determinants were implemented usingthe method of LU factorization since it is fast and efficient which is abig advantage for a simulation tool, and it was actually discovered thatthis part is not a bottleneck for the simulation, unlike later partswhere large symbolic results may need to be manipulated. All transferfunctions are modeled as objects and are reduced to a standard rationals-function (Laplace domain) form before being displayed. The next stepextracts the roots of the s-function denominator, it is well known thatthe values and number of the roots depend on the coefficients and orderof the circuit (number of storage elements) respectively. Those samecoefficients are of course functions of the circuit parameters(admittances, Capacitance and inductance values, etc.). at this pointthe numerical values of the circuit components are substituted into thetransfer functions since it is impossible to get roots in closedsymbolic form for polynomial equation larger than fifth order(Abel-Ruffini Theorem).

The Java® class that implemented the above algorithm returns all rootswith the multiplicity for each one. It then hands the root date toanother module that applies Residue theorem to essentially obtain thepartial fraction expansion of the transfer function.

All partial fraction objects are then fed into the Symbolic InverseLaplace transform module which constructs the final required timeresponse. The GUI provides tools for graphically plotting such responseswith respect to time or just plotting the frequency response.

In order to create the adequate code that would compare the student'sequations against the correct equations for a given circuit, theflowchart displayed in FIG. 27B has been created. As the flow chartexplains, the program starts by checking the number of terms of theinserted equation and gives the corresponding error message if thatnumber does not equal the correct equation's number of terms. Thefollowing step is checking for legitimacy of the terms' signs and thenthe validity of those terms. Using the flow chart created for theprogram, a code has been created to compare each term of the inputtedequation.

19—Show Me Design 44 FIG. 1

The Show me Design module can be a stand-alone application that can beused with or separately from the rest of the invention. The designmaterials will correspond to the topic being discussed.

Referring to 44 FIG. 1, if the book is a technical book where designproblems are valid, the toolbar can contain a link to start a designcase (i.e. images, text, equations, circuits of the design) to ossifythe main concepts of the topic.

20—Show Me Practical Relevance 46 FIG. 1

The Show me Practical Relevance module can be a stand-alone applicationthat can be used with or separately from the rest of the invention. Thepractical application presented will correspond to the topic beingdiscussed.

Referring to 46 FIG. 1, if the book addresses a topic that has apractical relevance, the toolbar can contain a link that starts apractical relevance case along with images, datasheets, and documentsfrom the real-world.

21—Clock Running in the Background 1400 FIGS. 28-29

This clock (FIG. 29) is very expandable, and can save the times acrossmultiple runs and show it beside times for the current run, and we canshow times per chapter/section/example/etc. FIG. 28 shows a flowchart tocarry our implementation.

Referring to FIGS. 28-29, a clock can run in the background to estimatethe time spent on each section as a sort of student assessment.According to this assessment, the level of the quiz problems can beeffected.

22—Dynamic Cover Page 1500 FIG. 30

Dynamic cover pages for the invention and its sections can be predefinedwith meaningful messages to deliver for the user. The invention can pickthe predefined cover and display it based on the collected statistics.FIG. 30 shows a flowchart 1500 to carry our implementation.

Referring to 1500 FIG. 30, the invention keeps track of the latestbrowsed through topics with the weaknesses and strengths of the user itcollects by the quizzes and the time spent per topic. Accordingly, thecover page shows images, messages, and measures that change every timethe user opens their digital book.

23—Seeded Content 48, 1600 FIGS. 1, 31.

Since the invention is highly interactive with continually presentrandomized values for the examples, drill problems, practical and designexamples, quizzes and end-of-chapter problems, uniformity of values maybe established when needed. Hence, we can assign seeds that correspondto fixed values through out the invention. This feature is very helpfulto instructors who desire that all students to study the same content(assigned numerical values) and tackle the same problems.

Referring to 48, 1600 FIGS. 1 and 31, the teacher/instructor can assigndifferent numbers (seeds) to the end of a chapter/section problems sothat the class can have consistent answers.

Alternatively, each of the students can be assigned separate seeds toprevent copying of answers and prevent cheating during assignments.

In addition to assigning uniform seeds, the invention can allow forrandom generated seeds be given to the students so that no two studentscan generate the same answers to problems, and the like.

24—Other Features 50, 52, 54 FIG. 1.

The idea is to construct the page with multiple layers containinganalysis of a topic with different difficulty levels, and methods ofsolving the same problem in a given level. The purpose is to giveflexibility to the user and benefit a large diversity of students as faras the level of their understanding of the material and to see how agiven problem is being solved. At any point of the analysis, the usercan switch to a different difficulty level problem by a click of abutton.Each layer or level contains children layers representing differentmethods for the solution. For instance, the user can switch betweenfigures A and B to view the effect of changing the current or voltagedirections. Furthermore, the student can choose to view either thesymbolic or numerical solution for each example as shown below: Theelectronic textbook is a well organized tool with the followingfeatures:

-   -   1. Difficulty Levels: Discussion within the text which covers        four levels of difficulty as shown in FIG. 1 exhibit 52.    -   2. Solution Methods: Examples which cover up to four levels of        difficulty with each level will include up to four different        techniques of solutions labeled as: A, B, C, D as shown in FIG.        1 exhibit 50.    -   3. Each technique is solved symbolically and numerically as        shown in 54 FIG. 1.    -   4. Rolling Images: Each level includes sets of images with the        same elements but different placements and arrangements. Arrow        buttons permit the switching between those arrangements.

While the invention has been described, disclosed, illustrated and shownin various terms of certain embodiments or modifications which it haspresumed in practice, the scope of the invention is not intended to be,nor should it be deemed to be, limited thereby and such othermodifications or embodiments as may be suggested by the teachings hereinare particularly reserved especially as they fall within the breadth andscope of the claims here appended.

That which is claimed is:
 1. A computing device comprising: a display; amemory to store electronic book data comprising at least one problem tobe solved and having a plurality of different content layers eachassociated with a different content difficulty level; and a processorcoupled to said display and said memory to determine a selected contentdifficulty level for viewing of the at least one problem, and determinea given solution technique for solving the at least one problem fromamong a plurality of different solution techniques, solve the at leastone problem to generate a solution therefor based upon the determinedcontent difficulty level and the given solution technique, and displayon said display the at least one problem of the electronic book data andthe solution therefor.
 2. The computing device of claim 1 wherein the atleast one problem comprises at least one of a scientific problem, anengineering problem, and a mathematics problem.
 3. The computing deviceof claim 1 wherein the at least one problem comprises at least oneelectrical circuit problem.
 4. The computing device of claim 1 whereinthe plurality of different solution techniques comprises a symbolicsolution technique.
 5. The computing device of claim 1 wherein theplurality of different solution techniques comprises a numericalsolution technique.
 6. The computing device of claim 1 wherein thedifferent content layers provide cumulative layers of complexity withrespect to one another.
 7. The computing device of claim 1 furthercomprising an input device coupled to said processor to select thecontent difficulty level.
 8. A method for using a computing devicecomprising a display and a memory, the method comprising: storingelectronic book data comprising at least one problem to be solved in thememory, the electronic book data having a plurality of different contentlayers each associated with a different content difficulty level;determining a selected content difficulty level for viewing of the atleast one problem, and a given solution technique for solving the atleast one problem from among a plurality of different solutiontechniques; solving the at least one problem to generate a solutiontherefor based upon the determined content difficulty level and thegiven solution technique; and displaying on the display the at least oneproblem of the electronic book data and the solution therefor.
 9. Themethod of claim 8 wherein the at least one problem comprises at leastone of a scientific problem, an engineering problem, and a mathematicsproblem.
 10. The method of claim 8 wherein the at least one problemcomprises at least one electrical circuit problem.
 11. The method ofclaim 8 wherein the plurality of different solution techniques comprisesa symbolic solution technique.
 12. The method of claim 8 wherein theplurality of different solution techniques comprises a numericalsolution technique.
 13. The method of claim 8 wherein the differentcontent layers provide cumulative layers of complexity with respect toone another.
 14. A non-transitory computer-readable medium for acomputing device comprising a display and a memory, the non-transitorycomputer readable medium having computer-executable instructions forcausing the computing device to perform steps comprising: storingelectronic book data comprising at least one problem to be solved in thememory, the electronic book data having a plurality of different contentlayers each associated with a different content difficulty level;determining a selected content difficulty level for viewing of the atleast one problem, and a given solution technique for solving the atleast one problem from among a plurality of different solutiontechniques; solving the at least one problem to generate a solutiontherefor based upon the determined content difficulty level and thegiven solution technique; and displaying on the display the at least oneproblem of the electronic book data and the solution therefor.
 15. Thenon-transitory computer-readable medium of claim 14 wherein the at leastone problem comprises at least one of a scientific problem, anengineering problem, and a mathematics problem.
 16. The non-transitorycomputer-readable medium of claim 14 wherein the at least one problemcomprises at least one electrical circuit problem.
 17. Thenon-transitory computer-readable medium of claim 14 wherein thedifferent content layers provide cumulative layers of complexity withrespect to one another.